{ "type" : "object", "$schema" : "http://json-schema.org/draft-03/schema#", "properties" : { "id" : { "type" : "integer", "required" : true, "description" : "Unique identifier for each file that is produced or processed by CMP", "minimum" : 1.0 }, "jobCode" : { "type" : "string", "required" : true, "description" : "Identifier of the job that produced or processed this file", "maxLength" : 10 }, "version" : { "type" : "number", "required" : true, "description" : "The current version of the generic extract file. This must match the corresponding inbound file.", "maximum" : 1.0, "minimum" : 1.0 }, "interfaceCategory" : { "type" : "string", "required" : true, "description" : "CMP categorisation of the job associated with this file.", "enum" : [ "Payments", "Credit Management", "Usage Processing", "Billing", "Purge", "Number Management", "Data Warehouse", "COMMS", "Provisioning", "Core Bulk", "Satellite Bulk" ] }, "interfaceType" : { "type" : "string", "required" : true, "description" : "Sub-categorisation of the job", "enum" : [ "Recurring Card Payments", "Posting Recurring Payments", "Not Applicable", "Debt Recovery Response", "Debt Recovery Extract", "Reversal", "Rated Usage", "Usage Archiving", "Posting Uploaded Payments", "Upload", "Invoice Production", "Statement Production", "Bill Print", "Invoice Posting S/L", "Invoice Posting G/L", "Credit Reference", "Recurring Bank Payments", "Correspondence History Purge", "Address Purge", "Payment Card Purge", "Refund Purge", "ADDACS Purge", "Experian Purge", "Payments Extract Purge", "Direct Debit Purge", "Account Purge", "Credit Control", "Managed Numbers", "Rated Charge", "Mandates", "Managed Number Monitor", "SIM Profiles", "Unbilled Usage Analytics", "PUSH", "EXTERNAL_TRIGGER", "SMS", "EXTERNAL", "STORAGE", "EMAIL", "LETTER", "ACKNOWLEDGEMENT", "Agreement Analytics", "Invoice Detail Analytics", "Unallocated Usage Analytics", "Subscription Analytics", "Subscription Service Analytics", "Payment Detail Analytics", "Account Analytics", "Transaction Detail Analytics", "Billed Usage Analytics", "Edit Subscription", "Default" ] }, "stage" : { "type" : "string", "required" : true, "description" : "Represents the processing stage a file has reached", "enum" : [ "Batch", "Extract/Load", "Transform", "Transmission" ] }, "stageStatus" : { "type" : "string", "required" : true, "description" : "Represents the status of the file at the processing stage", "enum" : [ "In Progress", "Complete", "Error" ] }, "batchDateTime" : { "type" : "string", "required" : true, "description" : "Represents when a batch was created in CMP", "format" : "date-time" }, "loadDateTime" : { "type" : "string", "required" : true, "description" : "Represents when an external file was initially loaded into CMP", "format" : "date-time" }, "externalFileName" : { "type" : "string", "required" : true, "description" : "Third party file name", "maxLength" : 100, "pattern" : "^([a-zA-Z0-9._-])+$" }, "detailErrors" : { "type" : "array", "description" : "The errors", "items" : { "type" : "object", "properties" : { "detailSequence" : { "type" : "integer", "required" : true, "description" : "Sequential transaction number" }, "hierarchyEntity" : { "type" : "object", "description" : "Represents the customer reference.", "properties" : { "subscriptionId" : { "type" : "integer", "description" : "The subscription id that CMP associated with the record.", "maximum" : 9.9999999E7, "minimum" : 1.0 }, "accountId" : { "type" : "integer", "description" : "The account id that CMP associated with the record", "maximum" : 9.9999999E7, "minimum" : 1.0 }, "corporateId" : { "type" : "string", "description" : "The corporate code that CMP associated with the record", "maxLength" : 6, "minLength" : 1 }, "groupId" : { "type" : "string", "description" : "The group code that CMP associated with the record", "maxLength" : 6, "minLength" : 1 } } }, "externalReference" : { "type" : "string", "description" : "The external reference from the 3rd party", "maxLength" : 50 }, "errorCode" : { "type" : "string", "required" : true, "description" : "Represents the error code", "maxLength" : 6 }, "errorDescription" : { "type" : "string", "required" : true, "description" : "Description associated with the error code", "maxLength" : 100 } } } } } }